處理 CONNECT 請求

在處理 HTTPS 流量期間,套用封鎖重定向操作的結果與將這些操作套用於 HTTP 流量的結果不同。使用者將不會看到封鎖頁面,不會被重定向到指定的 URL。相反,連線被終止。

這樣做的原因是,為了建立加密的 HTTPS 連線,使用者的電腦請求從代理伺服器連線到 Web 伺服器使用包含 CONNECT 方法的 HTTP 訊息(以下簡稱“CONNECT 請求”)。代理伺服器處理 CONNECT 請求並回復這些請求的能力在 HTTP 協定等級上是有限的。代理伺服器可以通知使用者連線成功,也可以終止連線。

為了正確套用封鎖重定向,您需要啟用 TLS/SSL 連線的解密將 CONNECT 方法新增到排除項目中,或為其建立略過規則。如果没有允许 CONNECT 請求的流量處理規則,連線將被終止。

允许 CONNECT 請求可能會降低公司 IT 基礎結構的安全性。建議僅在顯示封鎖頁面或重新指向對其關鍵的流量處理規則中將 CONNECT 方法新增到排除項目。

本文還介紹了使用標準 HTTP 訊息傳輸的 HTTP 流量處理與使用 CONNECT 請求建立加密連線時 HTTP 流量處理之間的特性和差異。

處理標準 HTTP 訊息

大部分 HTTP 方法(例如,GET, POST, DELETE, HEAD, OPTIONS, PATCH, PUT 和TRACE)是用來在用戶端(使用者電腦)和儲存所請求 web 資源的 web 伺服器之間交換訊息。Kaspersky Web Traffic Security 可以掃描此类 HTTP 訊息和將所有可用操作應用到這些訊息。下圖說明了 Kaspersky Web Traffic Security 中的 HTTP 訊息處理原則。

kwts_http_traffic

HTTP 訊息處理原則

圖中的數字對應於標準 HTTP 訊息處理的以下階段:

  1. 使用者請求存取網路資源。該請求將被中繼給代理伺服器。
  2. 應用程式檢查請求的 web 資源是否滿足存取規則的條件。
  3. 如果存取規則的應用程式導致封鎖操作,則使用者將看到封鎖頁面。如果套用重定向操作,則使用者將重定向到指定的 URL。
  4. 如果存取規則的應用程式導致允許操作,則應用程式將繼續使用防護規則或預設防護政策掃描流量。如果未偵測到任何威脅,則使用者請求將重定向到 web 伺服器。
  5. 防護模組還會掃描從 web 伺服器接收到的回應,以尋找病毒或其他威脅。當偵測到威脅時,應用程式會封鎖流量。如果未偵測到任何威脅,應用程式會將回應從 web 伺服器中繼到使用者電腦。
  6. 在未經授權的存取嘗試期間,入侵者可能會攔截資料,因為流量以未加密的形式進行傳輸。

處理連線請求的詳情

當嘗試透過 HTTPS 協定存取 web 資源時,使用者電腦會向代理伺服器傳送 CONNECT 請求,請求連線到 web 伺服器。由於加密設定和安全憑證的交換,在使用者電腦和 web 伺服器之間透過 TLS 協定建立了隧道安全連線。在隧道內,用戶端和 web 伺服器使用標準 HTTP 方法(GET, POST 等)交換訊息。預設情况下,代理伺服器不能分析加密連線的内容或干預隧道内的訊息交换。下圖說明了處理預設加密連線的機制。

kwts_https_without_bumping

預設加密連線的處理機制

圖中的數字對應於預設加密連線處理的以下階段:

  1. 使用者電腦向代理伺服器傳送 CONNECT 請求,請求使用 web 伺服器進行加密的資料通道。
  2. 應用程式檢查請求的 web 資源是否滿足存取規則的條件。
  3. 如果規則的套用導致封鎖重定向操作,則連線將終止。使用者將不會看到封鎖頁面,不會被重定向到指定的 URL。
  4. 如果存取規則的套用導致允許操作,則應用程式將傳送一個 CONNECT 請求,供防護模組進一步處理。
  5. 在防護模組成功掃描 CONNECT 請求後,代理伺服器在使用者電腦和 web 伺服器之間建立加密的資料通道。
  6. 使用者的電腦與加密資料通道內的 web 伺服器交換標準 HTTP 訊息。代理伺服器無法存取此類郵件,並且防護模組會對其進行掃描,因為傳輸的資料是加密的。
  7. 來自 web 伺服器的回應也會直接中繼到使用者電腦,而不會被防護模組固定。這降低了企業 IT 基礎架構的防護等級,因為使用者電腦可以接收包含威脅的流量。
  8. 在未經授權的存取嘗試期間,入侵者無法攔截資料,因為流量是在加密通道內傳輸的。

要使應用程式能夠使用防護模組掃描在加密資料通道內傳輸的流量,您需要配置 TLS/SSL 連線的解密。下圖說明了透過啟用 TLS/SSL 連線解密來處理加密連線的機制。

kwts_https_with_bumping

啟用 TLS/SSL 連線解密處理加密連線的機制

圖中的數字對應於啟用 TLS/SSL 連線解密的加密連線處理的以下階段:

  1. 使用者電腦向代理伺服器傳送 CONNECT 請求,請求使用 web 伺服器進行加密的資料通道。
  2. 應用程式檢查請求的 web 資源是否滿足存取規則的條件。
  3. 如果存取規則的應用程式導致封鎖重定向操作,則連線將終止。使用者將不會看到封鎖頁面,不會被重定向到指定的 URL。
  4. 如果存取規則的套用導致允許操作,則應用程式將傳送一個 CONNECT 請求,供防護模組進一步處理。
  5. 防護模組成功掃描 CONNECT 請求後,則在使用者的電腦和代理伺服器之間以及代理伺服器和 Web 伺服器之間將被建立加密的資料通道。
  6. 使用者電腦與加密資料通道內的 web 伺服器交換標準 HTTP 請求。應用程式被授予對正在傳輸的所有資料的存取權限,並可以對其應用防護規則。
  7. 應用程式檢查請求的 web 資源是否滿足存取規則的條件。
  8. 如果存取規則的應用程式導致封鎖操作,則使用者將看到封鎖頁面。如果套用重定向操作,則使用者將重定向到指定的 URL。
  9. 如果存取規則的應用程式導致允許操作,則應用程式將繼續使用防護規則或預設防護政策掃描流量。如果未偵測到任何威脅,則使用者請求將重定向到 web 伺服器。
  10. 防護模組還會掃描從 web 伺服器接收到的回應,以尋找病毒或其他威脅。當偵測到威脅時,應用程式會封鎖流量。如果未偵測到任何威脅,應用程式將透過加密資料通道將回應從 web 伺服器中繼到使用者電腦。
  11. 在未經授權的存取嘗試期間,入侵者無法攔截資料,因為流量是在加密的資料通道內傳輸的。

本部分內容:

配置流量處理規則中的排除項目

建立一個略過規則

頁面頂端